﻿using System.Collections.Generic;

namespace WeWork.Entitys.Send
{
    /// <summary>
    /// 混合消息
    /// </summary>
    public class ChatMixed : ChatSend
    {
        public ChatMixedDetail mixed { get; set; }
    }
    public class ChatMixedDetail
    {
        public List<ChatMixedDetailItem> item { get; set; }
    }

    public class ChatMixedDetailItem
    {
        /// <summary>
        /// 
        /// </summary>
        public string type { get; set; } = string.Empty;
        /// <summary>
        /// 
        /// </summary>
        public string content { get; set; } = string.Empty;
    }

    public interface IChatMixedBase
    {
        /// <summary>
        /// 消息类型
        /// </summary>
        string type { get; set; }
    }
    public class ChatMixedBase : IChatMixedBase
    {
        /// <summary>
        /// 消息类型
        /// </summary>
        public string type { get; set; } = string.Empty;
    }
    /// <summary>
    /// 混合消息中文本
    /// </summary>
    public class ChatMixedText : ChatMixedBase
    {
        /// <summary>
        /// 
        /// </summary>
        public ChatTextDetail content { get; set; }
    }
    /// <summary>
    /// 混合消息中图片
    /// </summary>
    public class ChatMixedImage : ChatMixedBase
    {
        /// <summary>
        /// 
        /// </summary>
        public ChatImageDetail content { get; set; }
    }
    /// <summary>
    /// 混合消息中表情
    /// </summary>
    public class ChatMixedEmotion : ChatMixedBase
    {
        /// <summary>
        /// 
        /// </summary>
        public ChatEmotionDetail content { get; set; }
    }
    /// <summary>
    /// 混合消息中文件
    /// </summary>
    public class ChatMixedFile : ChatMixedBase
    {
        /// <summary>
        /// 
        /// </summary>
        public ChatFileDetail content { get; set; }
    }
    /// <summary>
    /// 混合消息中语音
    /// </summary>
    public class ChatMixedVoice : ChatMixedBase
    {
        /// <summary>
        /// 
        /// </summary>
        public ChatVoiceDetail content { get; set; }
    }
    /// <summary>
    /// 混合消息中视频
    /// </summary>
    public class ChatMixedVideo : ChatMixedBase
    {
        /// <summary>
        /// 
        /// </summary>
        public ChatVideoDetail content { get; set; }
    }
}
